<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Data file format</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Universal JTAG library, server and tools"
HREF="index.html"><LINK
REL="UP"
TITLE="Internals"
HREF="_internals.html"><LINK
REL="PREVIOUS"
TITLE="Drivers"
HREF="_drivers.html"><LINK
REL="NEXT"
TITLE="Development"
HREF="_development.html"><LINK
REL="STYLESHEET"
TYPE="text/css"
HREF="UrJTAG.css"></HEAD
><BODY
CLASS="section"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Universal JTAG library, server and tools</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="_drivers.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Chapter 4. Internals</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="_development.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="section"
><H1
CLASS="section"
><A
NAME="_data_file_format"
>4.3. Data file format</A
></H1
><P
>JTAG declarations files are located in directory "data". The files contains
common part specific JTAG information in parseable form, e.g.  list of the JTAG
commands, boundary scan register, list of JTAG registers, etc.</P
><P
>Syntax of the JTAG declaration file is defined in the following subsections.</P
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="_general_rules"
>4.3.1. General rules</A
></H2
><P
>JTAG declaration file is text file which consists of lines. Empty lines are
ignored. Text after first "#" on the line to the end of line is ignored. This
is useful for comments.  All other lines are significant.</P
><P
>Each significant line consists of tokens separated by whitespace. Whitespace
could be spaces and/or tabs.</P
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="_signal_definition"
>4.3.2. Signal Definition</A
></H2
><P
>Signal definition line consists of word "signal" followed by whitespace and
signal name (without spaces in the name). Rest of the line should contain
whitespace separated list of pins of the part. This list is currently not used
for any purpose in JTAG Tools. It is intended for future use.</P
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="_manufacturers_list"
>4.3.3. Manufacturers List</A
></H2
><P
>The <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>data/MANUFACTURERS</I
></SPAN
> file is used to locate the manufacturer of a specific
device found in the JTAG chain.  If you get the error <SPAN
CLASS="strong"
><B
CLASS="emphasis"
>Unknown manufacturer</B
></SPAN
>
when attempting the <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>detect</I
></SPAN
> command, this is the file you need to update.</P
><P
>See the JEDEC document for more information:
JEDEC Solid State Technology Association, "Standard Manufacturer's
Identification Code", September 2001, Order Number: JEP106-K</P
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="_format"
>4.3.3.1. Format</A
></H3
><P
>The first token is a bit string that matches bits 11-1 of the device's IDCODE.
We omit bit 0 because it should always be 1 (per the JEDEC standard).</P
><P
>The second token is the name of the directory under <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>data/</I
></SPAN
> to search for
specific part information.</P
><P
>The rest of the line is the human readable form of the manufacturer's name.</P
><P
>For example, we find this in <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>data/MANUFACTURERS</I
></SPAN
>:</P
><PRE
CLASS="literallayout"
>00001100101   analog          Analog Devices, Inc.</PRE
><P
>The manufacturer's IDCODE is <TT
CLASS="literal"
>000011001011</TT
> (notice the last bit is stripped),
more part information can be found under <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>data/analog/</I
></SPAN
>, and the human friendly
name is <TT
CLASS="literal"
>Analog Devices, Inc.</TT
>.</P
></DIV
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="_parts_list"
>4.3.4. Parts List</A
></H2
><P
>Every manufacturer subdirectory needs a <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>PARTS</I
></SPAN
> file.  This is used to look
up further information about a part such as the stepping and signal list.  If
you get the error <SPAN
CLASS="strong"
><B
CLASS="emphasis"
>Unknown part</B
></SPAN
> when attempting the <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>detect</I
></SPAN
> command, this is
the file you need to update.</P
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="_format_2"
>4.3.4.1. Format</A
></H3
><P
>The first token is a bit string that matches bits 27-12 of the device's IDCODE.</P
><P
>The second token is the name of the directory under the manufacturer's <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>data/</I
></SPAN
>
directory to search for specific part information.</P
><P
>The rest of the line is the human readable form of the part's name.</P
><P
>For example, we find this in <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>data/analog/PARTS</I
></SPAN
>:</P
><PRE
CLASS="literallayout"
>0010011111001000      bf537                   BF537</PRE
><P
>The part's IDCODE is <TT
CLASS="literal"
>0010011111001000</TT
>, more part information can be found
under <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>data/analog/bf537/</I
></SPAN
>, and the human friendly name is <TT
CLASS="literal"
>BF537</TT
>.</P
></DIV
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="_stepping_list"
>4.3.5. Stepping List</A
></H2
><P
>Every part subdirectory needs a <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>STEPPINGS</I
></SPAN
> file.  This is used to find the
file that contains information like the signals list.  If you get the error
<SPAN
CLASS="strong"
><B
CLASS="emphasis"
>Unknown stepping</B
></SPAN
> when attempting the <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>detect</I
></SPAN
> command, this is the file you
need to update.</P
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="_format_3"
>4.3.5.1. Format</A
></H3
><P
>The first token is a bit string that matches bits 31-28 of the device's IDCODE.</P
><P
>The second token is the name of the file to load that contains information like
the signal list, extra instructions/registers, etc&#8230;  This file should be
placed alongside the <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>STEPPINGS</I
></SPAN
> file in the part-specific subdirectory.</P
><P
>The rest of the line is the human readable form of the part stepping's name.</P
><P
>For example, we find this in <SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>data/analog/bf537/STEPPINGS</I
></SPAN
>:</P
><PRE
CLASS="literallayout"
>0010  bf537           2</PRE
><P
>The part's stepping is <TT
CLASS="literal"
>0010</TT
>, signal information can be found in the file
<SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>data/analog/bf537/bf537</I
></SPAN
>, and the human friendly stepping name is <TT
CLASS="literal"
>2</TT
>.</P
></DIV
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="_drivers.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="_development.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Drivers</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="_internals.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Development</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>